Knowledgebase refers to information about a data set, database or other accumulation of data. Such knowledgebase is in addition to the actual data included within the dataset or database, and may comprise information about the interrelationships between the various data elements. Each bit of information in a knowledgebase is typically indicated as being stored in ontological triples, and including two instances or concepts linked by a relation. By linking these “barbell” representations together, a knowledge graph representative of a knowledgebase may be generated consisting of a large graph which may be traversed when attempting to access information from the knowledgebase. Thus, triples are generated associated with one or more concepts in any number of documents or the like. These triples are connected to form the knowledgebase associated with these documents or the like.
In addition, a knowledge representation of each and every document or the like that makes up the knowledgebase is formed and stored. As can be seen, addition of further documents or the like increases the number of knowledgebase representations of those documents, and therefore increases time associated with searching through them.
Upon entry of a query by a user, a knowledge representation of that query is generated. Thereafter, that generated knowledge representation is compared to each of the knowledge representations of the documents or the like, comprising the knowledge graphs to determine if there are any matches. This may be a laborious task, requiring comparing the query knowledge representation with each and every knowledgebase representation of the documents or the like associated with the knowledgebase. Additionally, as data is added to the knowledgebase, additional search time at run time is required.
Therefore, it would be desirable to provide a method and apparatus that overcomes these noted drawbacks of the prior art and allows for the easy and quick querying of knowledgebase by a user query.